//
//  LYQStatus.swift
//  SwiftWeibo
//
//  Created by 刘英群 on 2017/1/5.
//  Copyright © 2017年 刘英群. All rights reserved.
//

import UIKit
import YYModel

//微博数据模型
class LYQStatus: NSObject {

    // Int 类型在64为的机器是64位的，在32位机器就是32位
    // 如果不写Int64 在ipad2 iphone5 5c 4s 4 都无法正常运行
    var id: Int64 = 0
    
    // 微博信息内容
    var text: String?
    
    /// 转发数
    var reposts_count: Int = 0
    /// 评论数
    var comments_count: Int = 0
    /// 点赞数
    var attitudes_count: Int = 0
    
    // 微博的用户
    var user: LYQUser?
    
    // 被转发的原创微博
    var retweeted_status: LYQStatus?
    
    // 微博配图模型数组 yy——model 字典转模型时，如要发现一个数组属性，就要调用下面方法
    var pic_urls: [LYQStatusPicture]?
    
    // 重写description的计算型属性
    override var description: String{
        
        return yy_modelDescription()
    }
    
    
    // 类函数 -> 告诉yy_model ，如果遇到数组类型的属性，数组中存放的对象时什么类
    // NSArray 中保存对象的类型通常是 ‘id’ 类型
    // OC中的泛型是swift推出后，苹果为了兼容给oc增加的
    // 从运行时角度，仍然不知道数组中应该存放什么类型的对象
    class func modelContainerPropertyGenericClass() -> [String: Any] {
        return ["pic_urls": LYQStatusPicture.self]
    }
    
}
